\name{GeometryBuffer}
\alias{GeometryBuffer}
%- Also NEED an '\alias' for EACH other topic documented here.
\encoding{UTF-8}
\title{
Creates a geometry buffer
}
\description{
根据给定的几何对象及缓冲区分析参数对象创建缓冲区。可以指定源投影坐标系。 
}
\usage{
GeometryBuffer(obj, radius, side = "full", segments = 12L,
  end = "round", unit = "meter", prj = NULL)
}
%- maybe also 'usage' for other objects documented here.
\arguments{
  \item{obj}{
 指定的几何对象
}
  \item{radius}{
缓冲半径，当radius为一个数值时表示左半径或者全缓冲半径，但radius有多于一个数值时，radius中第二个数值表示右缓冲半径。
}
  \item{side}{
  缓冲类型，可以为 \enumerate{
  \item{full: 全缓冲}
  \item{left: 左缓冲}
  \item{right: 右缓冲}
  \item{differ: 左右不等缓冲}
  }
}
  \item{segments}{
半圆弧线段个数，即用多少个线段来模拟一个半圆，必须大于等于4
}
  \item{end}{
缓冲区端点类型，区分线对象缓冲区分析时的端点是圆头缓冲还是平头缓冲。对于点或面对象，只支持圆头缓冲。 可以\enumerate{
  \item{round: 圆头}
  \item{flat: 平头}
  }
}
  \item{unit}{
缓冲区分析半径单位，支持 \enumerate{
 \item{meter：米}
 \item{milimeter：毫米}
 \item{centimeter：厘米}
 \item{decimeter：分米}
 \item{kilometer：千米}
 \item{mile：英里}
 \item{inch：英寸}
 \item{yard：码}
 \item{foot：英尺}
}
}
  \item{prj}{
  投影信息，可以参考 \code{\link{CRS}}。待实现。
}
}
\details{
%%  ~~ If necessary, more details than the description above ~~
}
\value{
成功返回一个面几何对象。否则返回NULL。
}
\references{
%% ~put references to the literature/web site here ~
}
\author{
%%  ~~who you are~~
}
\note{
%%  ~~further notes~~
}

%% ~Make other sections like Warning with \section{Warning }{....} ~

\seealso{
%% ~~objects to See Also as \code{\link{help}}, ~~~
}
\examples{
pnts <- matrix(data=1:20, nrow=10, ncol=2)
line <- CreateLine(pnts, c(10))
result.region <- GeometryBuffer(line, c(5))
result.region2 <- GeometryBuffer(line, c(3), unit="mile")
}
% Add one or more standard keywords, see file 'KEYWORDS' in the
% R documentation directory.
\keyword{ supermap }% use one of  RShowDoc("KEYWORDS")
\keyword{ buffer }% __ONLY ONE__ keyword per line
